package com.shiroha.video.pojo.vo;

import com.mybatisflex.annotation.Column;
import com.shiroha.video.enums.WorkType;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.ibatis.type.ArrayTypeHandler;

import java.time.LocalDateTime;

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WorkVO {
    private Long id;                // 作品ID
    private String authorId;        // 作者ID
    private String authorName;      // 作者名称
    private String authorAvatar;    // 作者头像
    private String title;           // 作品标题
    private String coverUrl;        // 封面URL
    private String playUrl;         // 播放URL
    private int likeNum;            // 点赞数量
    private int commentNum;         // 评论数量
    private int favoriteNum;        // 收藏数量
    private int shareNum;           // 转发数量
    private boolean isFollowed;     // 是否关注
    private boolean isLiked;        // 是否点赞
    private boolean isFavorited;    // 是否收藏
    private WorkType type;          // 作品类型
    @Column(typeHandler = ArrayTypeHandler.class)
    private String[] tagNames;      // 标签列表
    private LocalDateTime createdAt;
}
